#pragma once

// The Abstract Observer
class IObserver
{
	public:
		virtual void update(bool bPause) = 0;
};

// The Abstract Subject
class IObservable
{
	public:
		virtual void registerOb(IObserver* ob) = 0;
		virtual void removeOb(IObserver* ob) = 0;
	
	protected:
		virtual void notifyOb() = 0;
};
